|
In DOS memory management, extended memory refers to memory above the first mebibyte (220 bytes) of address space in an IBM PC or compatible with an 80286 or later processor. The term is mainly used under the DOS and Windows operating systems. DOS programs, running in real mode or virtual x86 mode, cannot directly access this memory, but are able to do so through an application programming interface called the ''eXtended Memory Specification'' (XMS). This API is implemented by a driver (such as HIMEM.SYS) or the operating system, which takes care of memory management and copying memory between conventional and extended memory, by temporarily switching the processor into protected mode. In this context the term "extended memory" may refer to either the whole of the extended memory or only the portion available through this API. Extended memory can also be accessed directly by DOS programs running in protected mode using VCPI or DPMI, two (different and incompatible) methods of using protected mode under DOS. Extended memory should not be confused with expanded memory, an earlier method for expanding the IBM PC's memory capacity beyond 640 kB (655,360 bytes) using an expansion card with bank switched memory modules. Because of the available support for expanded memory in popular applications, device drivers were developed that emulated expanded memory using extended memory. Later two additional methods were developed allowing direct access to a small portion of extended memory from real mode. These memory areas are referred to as the high memory area (HMA) and the upper memory area (UMA; also referred to as upper memory blocks or UMBs). ==Overview== On x86-based PCs, extended memory is only available with an Intel 80286 processor or higher. Only these chips can address more than 1 megabyte of RAM. The earlier 8086/8088 processors can make use of more than 1 MB of RAM, if one employs special hardware to make selectable parts of it appear at addresses below 1 MB. On a 286 or better PC equipped with more than 640 kB of RAM, the additional memory would generally be re-mapped above the 1 MB boundary, since the IBM PC architecture reserves addresses between 640 kB and 1 MB for system ROM and peripherals. Extended memory is not accessible in real mode (except for a small portion called the high memory area). Only applications executing in protected mode can use extended memory directly. A supervising protected-mode operating system such as Microsoft Windows manages application programs access to memory. The processor makes this memory available through the Global Descriptor Table (GDT) and one or more Local Descriptor Tables (LDTs). The memory is "protected" in the sense that memory segments assigned a local descriptor cannot be accessed by another program because that program uses a different LDT, and memory segments assigned a global descriptor can have their access rights restricted, causing a processor exception (e.g., a general protection fault or GPF) on violation. This prevents programs running in protected mode from interfering with each other's memory. A protected-mode operating system such as Microsoft Windows can also run real-mode programs and provide expanded memory to them. The DOS Protected Mode Interface (DPMI) is Microsoft's prescribed method for an MS-DOS program to access extended memory under a multitasking environment. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Extended memory」の詳細全文を読む スポンサード リンク
|